import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    // 暴力枚举
    public static void main1(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int q = in.nextInt();
        int[] array = new int[n]; // 原始数组
        int i = 0;
        for (int x : array) { // 初始化原始数组
            array[i++] = in.nextInt();
        }
        int[][] array_L_R = new int[q][2]; // 查询数组
        i = 0;
        for (int[] x : array_L_R) { // 初始化查询数组
            x[0] = in.nextInt();
            x[1] = in.nextInt();
        }
        for (i = 0; i < q; i++) {
            int[] arr = array_L_R[i]; // 再一次细化查询数组
            int left = arr[0];
            int right = arr[1];
            long sum = 0; // 注意题目给的数据范围
            for (int j = left-1; j < right; j++) {
                sum += array[j];
            }
            System.out.println(sum);
        }
    }

    // 使用前缀和优化暴力枚举
    public static void main2(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int q = in.nextInt();
        int[] array = new int[n]; // 原始数组
        int i = 0;
        for (int x : array) { // 初始化原始数组
            array[i++] = in.nextInt();
        }
        // 由于辅助数组是记录前缀和，因此数据也得用long来保存
        long[] virtual_array = new long[n]; // 辅助数组，记录前缀和
        for (i = 0; i < n; i++) { // 初始化辅助数组
            if (i > 0) {
                virtual_array[i] = virtual_array[i-1] + array[i];
            } else {
                virtual_array[i] = array[i];
            }
        }
        int[][] array_L_R = new int[q][2]; // 查询数组
        i = 0;
        for (int[] x : array_L_R) { // 初始化查询数组
            x[0] = in.nextInt();
            x[1] = in.nextInt();
        }
        for (i = 0; i < q; i++) {
            int[] arr = array_L_R[i]; // 再一次细化查询数组
            int left = arr[0];
            int right = arr[1];
            long sum = 0; // 注意题目给的数据范围
            // 开始计算sum的值
            if (left-1 > 0) {
                sum = virtual_array[right-1] - virtual_array[left-2];
            } else {
                sum = virtual_array[right-1];
            }
            System.out.println(sum);
        }
    }

    // 另一种前缀和优化
    public static void main3(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int q = in.nextInt();
        int[] array = new int[n]; // 原始数组
        int i = 0;
        for (int x : array) { // 初始化原始数组
            array[i++] = in.nextInt();
        }
        // 由于辅助数组是记录前缀和，因此数据也得用long来保存
        long[] virtual_array = new long[n+1]; // 辅助数组，记录前缀和
        for (i = 0; i < n; i++) { // 初始化辅助数组
            virtual_array[i+1] = virtual_array[i] + array[i];
        }
        int[][] array_L_R = new int[q][2]; // 查询数组
        i = 0;
        for (int[] x : array_L_R) { // 初始化查询数组
            x[0] = in.nextInt();
            x[1] = in.nextInt();
        }
        for (i = 0; i < q; i++) {
            int[] arr = array_L_R[i]; // 再一次细化查询数组
            int left = arr[0];
            int right = arr[1];
            long sum = virtual_array[right] - virtual_array[left-1];
            System.out.println(sum);
        }
    }

    // 模拟前缀和
    public static void main(String[] args) {
        prefix_sum(new int[]{1,2,4});
    }
    public static void prefix_sum(int[] array) {
        int n = array.length;
        int[] virtual_array = new int[n+1]; // 多申请一个方便计算
        for (int i = 0; i < array.length; i++) {
            virtual_array[i+1] = virtual_array[i] + array[i];
        }
        for (int x : virtual_array) {
            System.out.println(x);
        }
    }
}
